//设计哈希函数
//1>将字符串转成比较大的数字：hashCode
//2>将大的数字hashCode 压缩 到数组范围(大小)之内

function hashFunc(str, size) {
  //定义一个hashCode变量
  let hashCode = 0;

  //2，霍纳算法，来计算hashCode的值
  for (let i = 0; i < str.length; i++) {
    //cats-> Uniccde编码 , 拿到每一个字符的编码
    hashCode = 37 * hashCode + str.charCodeAt(i);
  }
  // 3.取余操作
  let index = hashCode % size;
  return index;
}

// 测试
console.log(hashFunc("abc", 7)); //4
console.log(hashFunc("acb", 7)); //5
console.log(hashFunc("bca", 7)); //1
console.log(hashFunc("cba", 7)); //3
